package com.yicheng.statistics.repo.model

import java.util.Date

import com.fasterxml.jackson.annotation.{JsonIgnoreProperties, JsonSubTypes, JsonTypeInfo}
import com.yicheng.statistics.repo.model.Annotation._
import com.yicheng.statistics.repo.model.Constants.Data._

import scala.collection._
import com.carcloud.gateway.bean.data.DataCharger
import com.carcloud.gateway.bean.data.DataVehicle
import com.carcloud.gateway.bean.alarm.AlarmInfo.AlarmDetail


/**
  * 终端设备实时上报数据消息类。
  */
object Data {
  
  case class DataInfo(
      device_type:Int,
      device_id:String,
      sub_device:String,
      data_time:Date,
      data_type:Int,
      data_vehicle:DataVehicle
      )
      
  case class AlarmInfo(
      device_type:Int,
      device_id:String,
      alarm_time:Date,
      sub_device:Option[String], 
      alarm_type:Option[Int], 
      alarm_code:Option[Int], 
      alarm_source:Option[Int], 
      alarm_level:Option[Int], 
      alarm_start:Option[Date], 
      alarm_stop:Option[Date], 
      alarm_cnt:Option[Int],
      alarm_text:Option[String],
      alarm_detail:Option[AlarmDetail]
      )
}
